package com.xd.core.company.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xd.core.business.entity.ProductCompanyTiered;
import com.xd.core.product.entity.ProductCompany;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 企业信息
 * </p>
 *
 * @author ZX
 * @since 2025-02-23
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class ConfigureRatesVo implements Serializable {

    @ApiModelProperty(value = "产品收费费率")
    private List<ProductCompany> productCompanies;

    @ApiModelProperty(value = "入金费率")
    private BigDecimal depositRate;

    @ApiModelProperty(value = "入金服务费类型（1--比例，2--固定金额）")
    private String depositType;

    @ApiModelProperty(value = "入金服务费定价")
    private BigDecimal depositAmount;

    @ApiModelProperty(value = "单笔放款服务费")
    private BigDecimal outServiceFee;

    @ApiModelProperty(value = "公证书服务费（1-放款比例，2-固定金额）")
    private String notarizationChargeType;

    @ApiModelProperty(value = "公证书服务费底价")
    private BigDecimal notarizationChargeFloor;

    @ApiModelProperty(value = "公证书服务费收费比例")
    private BigDecimal notarizationChargeRate;

    @ApiModelProperty(value = "公证执行书服务费（1-放款比例，2-固定金额）")
    private String executeChargeType;

    @ApiModelProperty(value = "公证执行书服务费底价")
    private BigDecimal executeChargeFloor;

    @ApiModelProperty(value = "公证执行书服务费收费比例")
    private BigDecimal executeChargeRate;

    @ApiModelProperty(value = "合同服务费")
    private BigDecimal contractFee;

    @ApiModelProperty(value = "合同服务费（统一收费）")
    private BigDecimal contractFeeTotal;

    @ApiModelProperty(value = "服务费收费类型（1-每笔收费，2-一起收）")
    private String contractChargeType;

    @ApiModelProperty(value = "单笔（划扣）回款服务费比率")
    private BigDecimal collectionDeductionServiceFee;

    @ApiModelProperty(value = "单笔（转账）回款服务费比率")
    private BigDecimal collectionTransfeServiceFee;

    @ApiModelProperty(value = "提现手续费比例(单位‰)")
    private BigDecimal repayAccountFee;

    @ApiModelProperty(value = "提现手续费底价(单位：元）")
    private BigDecimal repayAccountFloor;

    @ApiModelProperty(value = "提现手续费类型（1--比例，2--固定金额")
    private BigDecimal repayAccountType;

    @ApiModelProperty(value = "产品收费费率")
    private List<ProductCompanyTiered> productCompanyTiereds;
}
